Engineering -> Interpersonal -> World domination :)

JEEConf
stairs
[info]stairs_jumper
   The conference has ended. Each year it gathers more speakers, programmers and companies. Each year I miss a singing performance done by a friend of mine - they fall into the same day:)
   Needless to say, there were plenty of technically great talks - I wasn't able to visit them all, as in previous year too. I always looking forward for such events, as I love meeting people passionate about the stuff they are doing. It's always feels great to meet people you've met before, so this year was a bit special for me - I was returning back to my home city for the time of the conference:)
   Briefly about talks I was lucky to visit:
  • Play with play!
    Disclaimear: they were trying Play! pre 2.0.
    Anton was telling us the story of their failure. Framework works great if you do everything the Play! way, but is hard to tackle otherwise. Multi-module projects have bad support by cloud providers, and you loose this lean reload pace when redeploying to the cloud. Also tests are all about integration and framework is not able to launch only subset of them - in their case 15 mins each launch.
  • I was going to visit Introduction to ActiveMQ apollo then, but spent the time in the lobby talking with Anton Arhipov asking questions about ZeroTurnaround products and eventually switching to the pleasant theme of life and universe ane everything. Anton Naumov joined us later so we had a pleasant time discussing tricky integration experiences.

    I was not able to afford JRebel, so used Maven. (c) Yet another guy
    Franlky this was the most pleasant and useful session for me.
  • Next, guys were delivering Performance optimization methodology talk - frankly I've lost the thread somewhere in the 4ths quarter, but I relaxed knowing that slides will be published. One of the sources I'll really return back to soon.
  • I missed most of the Becoming a professional Java Developer because of slacking around, but seen lots of excited people at the mall, and later around twenty of them surrounding Yakov and questioning him all over:) 
  • Next one was talk about Fork/Join and I loved it much. Again pace was a bit too fast compared to the amount of information delivered, but it had plenty of examples, pitfalls and design thoughts - really a great one! Room was filled with 120% of it's expected capacity.
  • Cassandra in practice was the last one for me and I enjoyed the opportunity to ask some questions I was curious about. Suprisingly I've heard that Super Column Families are essentially deprecated and that 50% space claimed by Cassandra for compactions are mandatory(I've done an experiment filling disk partition with data up to 100% and had no complains from Cassandra till the latest moment)
It all was a great fun!:) Thank you, everyone:)
Tags: ,
  • Add to Memories

AWS free usage tier machines do promote dynamic langages:)
stairs
[info]stairs_jumper
Was picking a RAD framework for prototyping ideas with and teaching friends of mine showing some interests in trying themselves in dev. Rails won the first round(although required quite a lot of tinkering with sources compared to P.).

Play! framework is a bit greedy out of the box :)


  • Add to Memories

Burden Driven Development: NoDebug
stairs
[info]stairs_jumper
My Eclipse recently started to behave weirdly with regards to debugging - it declines to do a 'step over', but always does 'step return'. Two years ago it might made me crying out loud, but the winds made me stronger. 

As a recent examples of NoOps and NoDev(frankly I'm waiting for NoQA being announced soon), I came up with my concept of NoDebug: you give up any attempts to investigate stuff via a debugger(which is good idea when investigating multithreaded problems, btw) and put just enough logging into the code to be able to track the problem without suspending a single thread.

Cons:
 - Have to restart the app once in a while to pick up the changes(see JRebel, Luke)

Pros:
 + Pays off once your distributed multithreaded multibuzzword system is in prod
Tags:
  • Add to Memories

First tangible benefit of diversity
stairs
[info]stairs_jumper
One of the engineers on my team has a great experience with Microsoft platform(something 5 years I think versus mine 4 doing Java). He was particularly uncomfortable with Eclipse taking too much actions from him to view package/file in Windows Explorer - Visual Studio has that built in function for that, so eventually he found some workaroundish way on the internet by inventing custom Run command. Now I'm caught by insomnia(no complains, I love the thing) - so found proper plugin to transform the thing in to two clicks joy, really(!)

http://junginger.biz/eclipse/

P.S. It appears that using Tortoise SVN for renames allows to preserve file history properly - interesting what's in Git
  • Add to Memories

How to ignore popups for certain chats
stairs
[info]stairs_jumper

Type /alertsoff \(*_*)/ in the chat. For help see /help.
___________________________________

I LOVE my team - we discover something new every day :)

Tags: ,
  • Add to Memories

Emotional docs
stairs
[info]stairs_jumper
   While evaluating solutions for distributed information storage, spotted this cool diagram of known deployments of Gluster. What's cool here is that community feels really closer - no more faceless DLs \ chats \ jira tickets, people are recognizible and visible straight away. Awesome:)
   Architectural decisions taken, approaches failed and other historical information makes platform feels as a more mature solution and not surprisingly one pleasant to work with. OpenStack Object Storage is a great example. 
   Yes, availability of extensive(sometimes any) documentation is still a concern for the great deal of developments, I feel like making the whole thing more emotional and human-like will pay the dividends quite soon. Me(and might be that other devs too) are not so excited about 'data sheets', distributed by sales people. It's time to distribute stories thereby I state ;)
Tags:
  • Add to Memories

God save the bicycles
stairs
[info]stairs_jumper
There was a time recently, I've noticed something changed. I felt I was not so active and my actions seemed boring even to myself. I knew nothing about what had happened, it just felt not right. Eventually I've figured out the thing: I'm bicycle addict - whenever I traveled by car/bus, my mood and energy level dramatically decreased. So simple and so unnoticed for many years.


Takeway: let's praise the time logs and bicycles :)
Tags:
  • Add to Memories

Automating Eclipse plugin config install
stairs
[info]stairs_jumper
   Building Scala IDE from sources just to make it live side by side with AspectJ plugin is funny. Breaking the whole IDE by uninstalling plugins - first twelve times maybe. Only unbounded supply of my moms apple pies brought refreshment to this wasteland(ok, and talks about Haskell).
    I haven't fixed the uninstall process as a result, just made intallation a bit more tolerable for me. The solution is composite update site. Behold
  • Add to Memories

Debugging with AspectJ
stairs
[info]stairs_jumper
  
  public aspect DebugClosingInputStreams {
      before(Object a):call(public void *.close()) && target(a){
          System.out.println("Closing : "+a);
      }
  }


When:
+ Debugging is not viable due to speed requirements (network timeouts in my case)
+ You don't want to manually add logging to bazillion places in the code
+ You'd like to throw away debugging code later, all at once
+ You're lazy enough to ignore the idea of manually wrapping JDK classes to add logging statements to them too

Do you have any other reasons to become AOP fan?
Tags: , ,
  • Add to Memories

Excelling personally is not a guarantee
stairs
[info]stairs_jumper
Today I was cleaning my balcony floor while holding only small flashlight in my mouth. I thought "Gee, probably I won't be able to cross this thing out of my GTD list until the morning" and then it struck me: anything we do for other people is subject to this too. It's not our deeds what makes people happy(and which we excel at), their consequences do and this kind of feedback is not usually readily available. 

We are geeks. We learn. We constantly dig through tons of information about frameworks, then best practices, eventually trying to understand our cutomer and a business they run. What's hard to change is that we're getting this done in the dark, while customer problems will be solved(or not) when the sun will raise and it's impossible to predict in the business world.

Let's do what we were doing so far. Excel. Let's be ready for more, when the morning comes :)
Tags:
  • Add to Memories

You are viewing [info]stairs_jumper's journal